<template>
  <div>
    <ul>
      <li v-for="(item, index) in arr" :key="index">{{ item }}</li>
    </ul>
    <button @click="changeArr">修改数组排序</button>
    <button @click="sliceBtn">修改某一项</button>
  </div>
</template>

<script>
export default {
  data() {
    return {
      arr: [4, 6, 3, 2, 7, 5],
    }
  },
  methods: {
    changeArr() {
      const a = this.arr.pop()
      this.arr.unshift(a)
    },
    sliceBtn() {
      this.$set(this.arr, 2, 10)
    },
  },
}

// 什么叫做虚拟dom?
//概念:虚拟dom本质上是一个js对象，用于描述真实的dom结构的。
// 数据更新的时候，根据老的虚拟dom结构和新的虚拟dom结构，进行对比，找出差异需要更新的地方)，真实的更新的dom结构里面(打补丁)
//使用v-for的时候，如果添加了key为当前数据的唯一标识的时候，domdiff的时候，就能找到可以复用的元素，最小化dom的更新
</script>

<style></style>
